1. Field of the Invention
The present invention relates to applications development and integration platforms. More particularly, the present invention relates to a computer-implemented system, method, and computer readable article that manages workflows among middleware and computer applications.
2. Description of the Related Art
A business or organizational process is the collection of steps or workflow taking place in a prescribed manner and leading to an organizational objective. The steps of an organizational process can be executed by an application server system or by a user. The following three types of components exist to support the organizational processes: 1) Definition—enables an organizational analyst or developer to define or modify the organizational process workflow or steps; 2) Execution—enables a developer or system analyst to begin or start an application process engine or system execution of a workflow or organizational process steps; 3) Monitor—provides a view of which processes and steps have been executed and their performance.
Given the service oriented architecture (SOA) paradigm of application development, most application systems (Rhapsody, FileNet, Siebel, Curam, etc.) provide the ability to define, execute and in some cases monitor workflows created within such application systems. Workflows that are specific to a particular application system or component of an application system are called micro workflows. In addition, business process management (BPM) software such as IBM WebSphere Process Server or Oracle Business Process Management enable the orchestration of steps or workflows via web services to various application systems. This orchestration enables the integration of processing and data among the various application systems. Workflows that span multiple application systems are called macro workflows.
A typical SOA application executes both macro and micro workflows to accomplish a particular function or goal. The definition, execution and monitoring of workflows to support these SOA environments typically resides and is performed using various application server systems as well as the middleware software.
Currently, there is no single middleware platform available to define and choreograph workflows and export these workflows to third party application server process engines at both a macro and micro level. For instance, existing application systems require definitions to be defined on multiple tools provided by that particular vendor. Similarly, there is no runtime tool that monitors the steps of the workflows across the various application servers.
The inability to have a single platform define, execute and monitor workflows across various application systems creates limitations. Developers have to learn multiple workflow tools and create and maintain these workflow definitions in various tools. For execution, multiple workflow engines will need to be made available to execute the steps for their application server environment. For monitoring current systems, an analyst or developer will need to use the various application server tools to drive, debug and monitor performance of workflows and the individual steps within the workflows.
Therefore, what is needed is a single design platform or a single middleware system that provides a centralized place for analysts or developers to create and maintain both macro and micro workflow definitions.